package com.example.task;

import org.springframework.stereotype.Component;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.concurrent.TimeUnit;

/**
 * 定时任务类，每秒钟输出一次当前时间，共执行1分钟
 */
@Component
public class TimedTask implements Runnable {

    private static final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    
    @Override
    public void run() {
        System.out.println("任务开始执行...");
        
        // 执行1分钟，每秒输出一次时间
        for (int i = 0; i < 60; i++) {
            try {
                // 获取当前时间并格式化
                String currentTime = dateFormat.format(new Date());
                System.out.println("当前时间: " + currentTime);
                
                // 休眠1秒
                TimeUnit.SECONDS.sleep(1);
            } catch (InterruptedException e) {
                System.out.println("任务被中断: " + e.getMessage());
                Thread.currentThread().interrupt();
                break;
            }
        }
        
        System.out.println("任务执行结束");
    }
}
